Multiple stream co-phasing for multiple-input-multiple-output (mimo) systems

ABSTRACT

A system and method for transmitting multiple independent data streams from subsets of a plurality of radio antennas. The method includes determining by the receiver, an antenna partitioning, including relative phase rotations to be applied to each antenna, that results in the highest channel capacity among the possible partitionings. The receiver then provides partitioning information to the transmitter, including the number of antenna subsets, which antennas are included in each subset, the capacity of the data stream to be transmitted from each antenna subset, and the relative phase rotations to be applied to the antennas in each subset. The transmitter partitions the plurality of radio antennas into mutually exclusive subsets in accordance with the partitioning information, applies the relative phase rotation to each antenna, and transmits an independent data stream from each subset of antennas with a rate not greater than the stream capacity.

BACKGROUND

The present invention relates to radio communication systems. More particularly, and not by way of limitation, the present invention is directed to an apparatus and method for transmitting independent data streams from a plurality of radio antennas.

The capacity of a wireless channel can be enhanced greatly by utilizing multiple transmit and multiple receive antennas. This has been demonstrated by open-loop multiple-input-multiple-output (MIMO) schemes, such as the Bell Labs Layered Space-Time (BLAST) architecture. Open-loop MIMO schemes do not require any feedback link from the receiver to the transmitter, as in closed-loop MIMO schemes. However, by exploiting instantaneous channel-state information provided to the transmitter by the receiver as in closed-loop MIMO schemes, the channel capacity is further enhanced. Closed-loop MIMO schemes include Eigenmode-BLAST, which is an optimum closed-loop MIMO scheme, and Per Antenna Rate Control (PARC), which achieves the open-loop MIMO capacity. In PARC, an independently coded and modulated data stream is transmitted from each transmit antenna. The coding rate for each data stream is provided by the receiver via a feedback mechanism.

While optimum closed-loop MIMO schemes require a large amount of instantaneous channel information to be fed back from the receiver to the transmitter, PARC requires much less feedback. However, PARC does not perform well in certain conditions, such as low signal-to-noise ratio (SNR) conditions, systems with correlated antennas, systems with fewer receive antennas than transmit antennas, and channels with Ricean fading. In such conditions, the MIMO channel often cannot support the transmission of as many data streams as the number of transmit antennas (as done in PARC). This limits the capacity of PARC. This problem was partly solved by Selective-PARC (S-PARC), which is an extension of PARC. S-PARC transmits as many data streams as can be supported by the channel by using the same number of transmit antennas as there are data streams. S-PARC performs better than PARC in the above-mentioned conditions. However, since S-PARC may not utilize all transmit antennas, its capacity is significantly lower than optimum closed-loop MIMO.

Thus, what is needed in the art is a closed-loop MIMO scheme that overcomes the deficiencies of conventional systems and methods by utilizing all transmit antennas to transmit an adaptive number of data streams. The present invention provides such a system and method.

SUMMARY

The present invention is a system and method for implementing in a radio communication system, a closed-loop MIMO scheme that utilizes, in one embodiment, all transmit antennas to transmit an adaptive number of data streams. This is done by partitioning the set of transmit antennas into mutually exclusive subsets to transmit independent data streams after “co-phasing”. The term “co-phasing” refers to a procedure in which relative phase rotations are applied to a data stream transmitted from multiple antennas. The concept of co-phasing is similar to beamforming, except that co-phasing is performed based on instantaneous channel-state information fed back to the transmitter by the receiver. The relative phase rotations (co-phasing angles) are designed to maximize the received signal power, which approximately maximizes channel capacity. An iterative algorithm may be used for finding the co-phasing angles. The scheme, referred to herein as “Multiple Stream Co-phasing” (MSC), requires similar complexity and feedback as S-PARC. However, MSC significantly outperforms S-PARC and achieves close to the capacity of optimum closed-loop MIMO for many channels of interest.

Thus, in one aspect, the present invention is directed to a method of transmitting multiple independent data streams from subsets of a plurality of radio antennas. The method includes determining by the receiver, a partitioning of the plurality of radio antennas that provides the highest channel capacity among all possible partitionings, and providing information regarding the determined partitioning to the transmitter. The transmitter partitions the plurality of radio antennas into mutually exclusive subsets in accordance with the determined partitioning information, applies a relative phase rotation to each antenna, and transmits an independent data stream from each partitioned subset of antennas.

In another aspect, the present invention is directed to a method of transmitting a data stream from a selected subset of a plurality of radio antennas. The method includes partitioning by the receiver, the plurality of radio antennas into a plurality of subsets; and calculating by the receiver for each subset, a relative phase rotation to be applied to each antenna in the subset, and a stream capacity for the subset with the relative phase rotations applied. The receiver then selects a subset having the highest stream capacity and sends information to the transmitter regarding the selected subset. The transmitter then transmits the data stream from the selected subset of antennas after applying the relative phase rotations to the antennas in the selected subset.

In yet another aspect, the present invention is directed to a radio system for transmitting multiple independent data streams from subsets of a plurality of radio antennas. A receiver includes means for determining a partitioning of the plurality of radio antennas that provides the highest channel capacity among all possible partitionings, and means for sending information regarding the determined antenna partitioning to a transmitter. The transmitter includes means for partitioning the plurality of radio antennas into mutually exclusive subsets in accordance with the determined partitioning information; means for applying a relative phase rotation to each antenna; and means for transmitting an independent data stream from each partitioned subset of antennas.

In still yet another aspect, the present invention is directed to a radio system for transmitting a data stream from a selected subset of a plurality of radio antennas. The system includes a receiver having means for partitioning the plurality of radio antennas into a plurality of subsets; and means for calculating for each subset, a relative phase rotation to be applied to each antenna in the subset, and a stream capacity for the subset with the relative phase rotations applied. The receiver also selects a subset having the highest stream capacity, and sends information to the transmitter regarding the selected subset. The system also includes a transmitter comprising means for transmitting the data stream from the selected subset of antennas after applying the co-phasing angles to the antennas in the selected subset.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

In the following section, the invention will be described with reference to exemplary embodiments illustrated in the figures, in which:

FIG. 1 is a flowchart illustrating the steps of an exemplary overall multi-stream co-phasing process performed by a transmitter and receiver in accordance with the teachings of the present invention;

FIG. 2 is a flowchart illustrating the steps of an exemplary process for computing channel-state feedback information by the receiver in accordance with the teachings of the present invention;

FIG. 3 is a flowchart illustrating the steps of an exemplary process for utilizing channel-state feedback information by the transmitter to maximize transmission capacity in accordance with the teachings of the present invention;

FIG. 4 is a simplified block diagram of an embodiment of the transmitter of the present invention; and

FIG. 5 is a simplified block diagram of an embodiment of the receiver of the present invention.

DETAILED DESCRIPTION

FIG. 1 is a flowchart illustrating the steps of an exemplary overall multi-stream co-phasing process performed by a transmitter and receiver in accordance with the teachings of the present invention. At step 11, the receiver determines channel-state information in a process shown in more detail in FIG. 2. In a preferred embodiment, the channel-state information includes an optimum antenna partitioning into K subsets, co-phasing angles for each antenna, and stream capacity (i.e., rate) information for the optimum antenna partitioning. At step 12, the receiver sends the channel-state information to the transmitter. At step 13, the transmitter de-multiplexes an input signal into K independent streams based on the antenna-partitioning information received from the receiver. Each stream may be coded and modulated at a rate which is not greater than the stream capacity. Each stream may also be scaled. At step 14, the transmitter partitions the antennas into K subsets and applies the co-phasing angles to each antenna in accordance with the channel-state information. At step 15, the transmitter transmits the K data streams from the K subsets of antennas.

Thus, based on instantaneous channel-state information received over a feedback channel from the receiver, the transmitter divides an input data signal into K separate streams and sends parallel sequences of data symbols (streams) to multiple antennas. Different phase rotations applied to each antenna eliminate mutual interference. By transmitting K streams in parallel, the transmission time required to send K symbols is reduced to one channel use. The total transmission rate is the sum of all of the separate stream rates.

FIG. 2 is a flowchart illustrating the steps of an exemplary process for computing channel-state feedback information by the receiver in accordance with the teachings of the present invention. The receiver analyzes each possible partition and determines a partition that provides the highest channel capacity (i.e., total transmission rate) among all possible partitionings. If the transmitter does not support all possible partitions, the receiver may analyze only those partitions that are supported by the transmitter. Each partition identifies the number of antenna subsets, which antennas are in each subset, the capacity of the data stream to be transmitted from each antenna subset, and what co-phasing angles are to be applied to the antennas in each subset.

The process begins at step 21 with the first partition n out of J partitions to be analyzed. Given the number of transmit and receive antennas, the receiver determines all possible (or desirable) transmit antenna set partitions. The receiver also knows (or estimates) the channel response matrix H and the noise variance N₀. At step 22, the co-phasing angles θ_(m) ^(k)(n) are determined using equation (9) and an iterative technique described below. At step 23, a prefilter weight matrix W(n) is computed using equation (4). At step 24, a prefiltered channel G(n) is computed as the product of W(n) and a channel impulse response matrix H using equation (5). At step 25, the channel capacity C(n) for the first partition is evaluated using equation (6). At step 26, the process determines whether all J partitions have been analyzed. If not, the process iterates n=n+1 at step 27, and returns to step 21 to analyze the next possible partition. If all of the J partitions have been analyzed, the process moves to step 28, where the receiver selects the partition that maximizes capacity (e.g., {circumflex over (n)}). At step 29, it is determined whether {circumflex over (K)} is equal to one, where {circumflex over (K)} is the number of input streams corresponding to the selected partition. If {circumflex over (K)}=1, the process moves to step 30 and determines the stream capacity. If {circumflex over (K)}>1, the method moves to step 31 where the stream capacity for each input stream k=1, 2, . . . , {circumflex over (K)} is obtained using equation (12). At step 32, the receiver sends predefined channel-state information to the transmitter.

FIG. 3 is a flowchart illustrating the steps of an exemplary process for utilizing channel-state feedback information by the transmitter to maximize transmission capacity in accordance with the teachings of the present invention. At step 34, the transmitter receives the instantaneous channel-state information from the receiver. In one embodiment, the channel-state information includes an optimum antenna partitioning into K subsets, co-phasing angles for each antenna, and stream capacity (i.e., rate) information for the optimum antenna partitioning. At step 35, the transmitter partitions the transmit antennas into K subsets as indicated by the channel-state information. At step 36, an input signal is de-multiplexed into K independent data streams, which are optionally coded, modulated, and scaled at step 37. At step 38, the transmitter applies the co-phasing information to the antennas in each subset, and at step 39, transmits independent data streams in parallel through each antenna subset. The following sections describe in more detail, the processes performed in both the receiver and the transmitter.

Consider a communication system with M transmit antennas and N receive antennas (i.e., an M×N MIMO system). Suppose that the channel is quasi-static and flat fading. The baseband system model can be written as: y=Hx+w   (1) where [x₁, x₂, . . . , x_(M)]^(T) is the transmitted signal, [y₁, y₂, . . . , y_(N)]^(T) is the received signal, H={h_(i, j)} is the N×M channel impulse response matrix, and [w₁, w₂, . . . , w_(N)]^(T) is a Gaussian noise vector with mean zero and covariance matrix N₀I_(N), where I_(N) denotes an N×N identity matrix. The total average transmit power is P_(T). E[x ^(H) x]=P _(T)  (2)

The transmitted signal is obtained as: x=Ws  (3) where [s₁, s₂, . . . , s_(K]) ^(T) is the input signal demultiplexed into K≦M streams which can be independently coded and modulated and W is an M×K prefilter weight matrix. The following describes a method for determining the prefilter weight matrix. It is assumed that the channel impulse response matrix H and the noise variance N₀ are known at the receiver. A person skilled in the art will appreciate that the true values can be replaced by their estimates.

Let A(n)={a₁(n), a₂(n), . . . , a_(k)(n)} be the n-th partition of the set of transmit antenna indices {1, 2, . . . , M}. The set a_(k)(n) contains the indices of the antennas used for the transmission of the k-th input stream in the n-th partition. The sets contained in a partition are constrained to be mutually exclusive and have at least one element each. The prefilter weight matrix for the n-th antenna set partition is given by: $\begin{matrix} {{W(n)} = {\sqrt{\frac{P_{T}}{K}}\left\lbrack \quad\begin{matrix} {\frac{1}{\sqrt{{a_{1}(n)}}}{{\underset{\_}{\phi}}_{1}(n)}} & {\frac{1}{\sqrt{{a_{2}(n)}}}{{\underset{\_}{\phi}}_{2}(n)}} & \ldots & {\frac{1}{\sqrt{{a_{K}(n)}}}{{\underset{\_}{\phi}}_{K}(n)}} \end{matrix} \right\rbrack}} & (4) \end{matrix}$ where φ _(k) (n) is an M×1 column vector with |a_(k) (n)| non-zero elements e^(jθ) _(w) ^(k) ^((n)) in rows m∈a_(k)(n) and zero elements in the remaining rows, where θ_(m) ^(k)(n) is the co-phasing angle in radians for the k-th data stream and the m-th transmit antenna (corresponding to the m-th row and the k-th column of the prefilter weight matrix), and |a| refers to the size of the set a.

The prefiltered channel is given by: $\begin{matrix} \begin{matrix} {{G(n)} = {{{HW}(n)} = \sqrt{\frac{P_{T}}{K}}}} \\ {\begin{bmatrix} {\frac{1}{\sqrt{{a_{1}(n)}}}{\sum\limits_{m \in {a_{1}{(n)}}}{{\underset{\_}{h}}_{m}{\mathbb{e}}^{j\quad{\theta_{m}^{1}{(n)}}}}}} & {\frac{1}{\sqrt{{a_{2}(n)}}}{\sum\limits_{m \in {a_{2}{(n)}}}{{\underset{\_}{h}}_{m}{\mathbb{e}}^{j\quad{\theta_{m}^{2}{(n)}}}}}} & \ldots & {\frac{1}{\sqrt{{a_{K}(n)}}}{\sum\limits_{m \in {a_{K}{(n)}}}{{\underset{\_}{h}}_{m}{\mathbb{e}}^{j\quad{\theta_{m}^{K}{(n)}}}}}} \end{bmatrix}.} \end{matrix} & (5) \end{matrix}$

The capacity of this scheme is given by: $\begin{matrix} \begin{matrix} {{C(n)} = {\log_{2}{\det\left( {I_{N} + {\frac{1}{N_{0}}{G(n)}{G^{H}(n)}}} \right)}}} \\ {= {\log_{2}{\det\left( {I_{K} + {\frac{1}{N_{0}}{G^{H}(n)}{G(n)}}} \right)}}} \end{matrix} & (6) \end{matrix}$

The co-phasing angles θ_(m) ^(k)(n) can be found by maximizing channel capacity. It can be seen that at high SNR, this is equivalent to maximizing the determinant of the prefiltered channel autocorrelation matrix G^(H)(n)G(n). The capacity and the determinant metric are non-linear functions of the angles. Since the determinant of a matrix is closely related to the trace of the matrix, the present invention utilizes the trace of the prefiltered channel autocorrelation matrix, given by: $\begin{matrix} {{{Trace}\left( {{G^{H}(n)}{G(n)}} \right)} = {\frac{P_{T}}{K}{\sum\limits_{k = 1}^{K}{\frac{1}{{a_{k}(n)}}{{\sum\limits_{m \in {a_{k}{(n)}}}{{\underset{\_}{h}}_{m}{\mathbb{e}}^{j\quad{\theta_{m}^{k}{(n)}}}}}}^{2}}}}} & (7) \end{matrix}$ to find the co-phasing angles. The trace metric, which equals the total received signal power, is also a non-linear function of the angles. However, the trace metric decouples in the input streams, which enables the co-phasing angles to be found independently for each data stream. Based on the trace metric, the co-phasing angles for the k-th stream can be found by using the partial derivatives: $\begin{matrix} {{\frac{\partial}{\partial{\theta_{m}^{k}(n)}}{{\sum\limits_{l \in {a_{k}{(n)}}}{{\underset{\_}{h}}_{l}{\mathbb{e}}^{j\quad{\theta_{l}^{k}{(n)}}}}}}^{2}} = 0} & (8) \end{matrix}$ for each m∈a_(k)(n).

It can be seen that the optimum co-phasing angles {circumflex over (θ)}_(m) ^(k)(n) satisfy the equations: $\begin{matrix} {{{{\hat{\theta}}_{m}^{k}(n)} = {\tan^{- 1}\left( \frac{{Im}\left\{ {\gamma_{m}^{k}(n)} \right\}}{{Re}\left\{ {\gamma_{m}^{k}(n)} \right\}} \right)}}{where}} & (9) \\ {{\gamma_{m}^{k}(n)} = {{{\underset{\_}{h}}_{m}^{H}\left( {\sum\limits_{\substack{l \in {a_{k}{(n)}} \\ l \neq m}}{{\underset{\_}{h}}_{l}{\mathbb{e}}^{j\quad{\theta_{l}^{k}{(n)}}}}} \right)}.}} & (10) \end{matrix}$

Note that for each data stream, the co-phasing angle for one of the transmit antennas can be arbitrarily set to zero (or another value), i.e. {circumflex over (θ)}_(m′) ^(k)(n)=0 for one m′∈a_(k)(n). Also note that equation (9) is non-linear in the co-phasing angles, except when |a_(k)(n)|=2. In this case, we have {circumflex over (θ)}_(m′) ^(k)(n)=0 and $\begin{matrix} {{{\hat{\theta}}_{m^{''}}^{k}(n)} = {\tan^{- 1}\left( \frac{{Im}\left\{ {{\underset{\_}{h}}_{m^{''}}^{H}{\underset{\_}{h}}_{m^{\prime}}} \right\}}{{Re}\left\{ {{\underset{\_}{h}}_{m^{''}}^{H}{\underset{\_}{h}}_{m^{\prime}}} \right\}} \right)}} & (11) \end{matrix}$ for a_(k)(n)={m′,m″}. An iterative algorithm can be used to determine the co-phasing angles for |a_(k)(n)|>2. Initially, all co-phasing angles may be set to zero (or some other value). In each iteration, the angles are updated using equation (9) in a parallel or serial fashion. In the parallel case, the angles in the current iteration are determined using the angles in the previous iteration only, while in the serial case, the angles in the current iteration are determined using the angles in the previous iteration and the previously-updated angles in the current iteration.

The receiver performs the process shown above in FIG. 2, and if it is determined at step 29 that {circumflex over (K)}>1, the stream capacity for each input stream k=1, 2, . . . , {circumflex over (K)} is obtained at step 31 as: $\begin{matrix} {{C_{k}\left( \hat{n} \right)} = {\log_{2}\left\lbrack {1 + {\frac{1}{N_{0}}{{\underset{\_}{g}}_{k}^{H}\left( \hat{n} \right)}\left( {I_{N} + {{G_{k + 1}\left( \hat{n} \right)}{G_{k + 1}^{H}\left( \hat{n} \right)}}} \right)^{- 1}{{\underset{\_}{g}}_{k}\left( \hat{n} \right)}}} \right\rbrack}} & (12) \end{matrix}$ where g _(k)({circumflex over (n)}) is the k-th column of the matrix G({circumflex over (n)}), and G_(k)({circumflex over (n)}) is an N×({circumflex over (K)}−k+1) matrix given by G_(k)({circumflex over (n)})=[g _(k)({circumflex over (n)}), g _(k+1)({circumflex over (n)}), . . . , g _({circumflex over (K)})({circumflex over (n)})]. The selected partition {circumflex over (n)} is signaled to the transmitter along with the {circumflex over (K)} rates {r₁, r₂, . . . , r_({circumflex over (K)})}, where r_(k) is the largest rate in bits per symbol less than or equal to C_(k)({circumflex over (n)}) which is supported by the transmitter, and the M−{circumflex over (K)} co-phasing angles {{circumflex over (θ)}_(m) ^(k)({circumflex over (n)}), k=1, 2, . . . , {circumflex over (K)}, m∈a_(k)({circumflex over (n)})} (that are not arbitrarily set). The amount of feedback required is thus M real coefficients plus a log₂J bit integer, where J is the number of possible (or desirable) partitions.

FIG. 1 is a simplified block diagram of an embodiment of the transmitter 40 of the present invention. As shown, an input signal 41 is passed to a demultiplexer 42 where it is demultiplexed into {circumflex over (K)} signals, which are independently coded and modulated in encoder/modulators 43 ₁-43 _({circumflex over (K)}) at rates {r₁, r₂, . . . , r_({circumflex over (K)})} to produce {circumflex over (K)} streams {s₁, s₂, . . . , s_({circumflex over (K)}), respectively. The {circumflex over (K)} streams are then scaled by scalers 44 ₁-44 _({circumflex over (K)}) and independently phase-rotated by phase rotators 45 prior to transmission. The k-th stream is scaled by √{square root over (P_(T)/{circumflex over (K)}|a_(k)({circumflex over (n)})| and transmitted using the subset a_(k)({circumflex over (n)}) of the transmit antennas after co-phasing (phase rotation) using the angles {circumflex over (θ)}_(m) ^(k)({circumflex over (n)}), m∈a_(k)({circumflex over (n)}). The antenna set partition, stream rates, and co-phasing angles are provided by the receiver.

FIG. 5 is a simplified block diagram of an embodiment of the receiver 50 of the present invention. As shown, an input signal y, is processed by the receiver utilizing a Minimum Mean Square Error-Decision Feedback Equalizer (MMSE-DFE) successive decoder 51 ₁-51 _({circumflex over (K)}). Bold lines in FIG. 5 denote vectors, and regular lines denote scalars. The MMSE feedforward filter and the feedback filter for the k-th stream (stage) are given by: $\begin{matrix} {{{{\underset{\_}{f}}_{k}\left( \hat{n} \right)} = {\left( {I_{N} + {\frac{1}{N_{0}}{G_{k + 1}\left( \hat{n} \right)}{G_{k + 1}^{H}\left( \hat{n} \right)}}} \right)^{- 1}{{\underset{\_}{g}}_{k}\left( \hat{n} \right)}}}{and}} & (13) \\ {{{{\underset{\_}{b}}_{k}\left( \hat{n} \right)} = {- {{\underset{\_}{g}}_{k}\left( \hat{n} \right)}}},} & (14) \end{matrix}$ respectively. The input to the k-th decoder is: $\begin{matrix} {z_{k} = {{{\underset{\_}{f}}_{k}^{H}\left( \hat{n} \right)}{\left( {\underset{\_}{y} + {\sum\limits_{l = 1}^{k - 1}{{{\underset{\_}{b}}_{l}\left( \hat{n} \right)}{\hat{s}}_{l}}}} \right).}}} & (15) \end{matrix}$ The k-th decoder produces an estimate of the k-th input stream ŝ_(k).

EXAMPLE

Consider the example of a 4×2 MIMO system. From the theory of MIMO channels, we know that an optimum number of input streams that can be transmitted is less than or equal to min(M, N)=2. There are eight possible transmit antenna set partitions in this case: one with single input stream (K=1), the rest with two input streams (K=2). The partitions are: A(1)={{1,2,3,4}}, A(2)={{1,2,3}, {4}}, A(3)={{1,2,4}, {3}}, A(4)={{1,3,4}, {2}}, A(5)={{2,3,4}, {1}}, A(6)={{1,2}, {3,4}}, A(7)={{1,3}, {2,4}} and A(8)={{1,4}, 2,3}}.

The prefilter weight matrices corresponding to these antenna set partitions are given below in order. $\begin{matrix} {{\left\{ {{W(n)},{n = 1},2,\ldots\quad,8} \right\} = \left\{ {{\sqrt{\frac{P_{T}}{4}}\begin{bmatrix} 1 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{2}^{1}{(1)}}} \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(1)}}} \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(1)}}} \end{bmatrix}},{P^{\prime}\begin{bmatrix} 1 & \quad \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{2}^{1}{(2)}}} & \quad \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{3}^{1}{(2)}}} & \quad \\ 0 & 1 \end{bmatrix}},{P^{\prime}\begin{bmatrix} 1 & \quad \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{2}^{1}{(3)}}} & \quad \\ 0 & 1 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{4}^{1}{(3)}}} & 0 \end{bmatrix}},{P^{\prime}\begin{bmatrix} 1 & \quad \\ 0 & 1 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(4)}}} & 0 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{4}^{1}{(4)}}} & 0 \end{bmatrix}},{P^{\prime}\begin{bmatrix} 0 & 1 \\ 1 & 0 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(5)}}} & 0 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(5)}}} & 0 \end{bmatrix}},{\sqrt{\frac{P_{T}}{4}}\begin{bmatrix} 1 & 0 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{2}^{1}{(6)}}} & 0 \\ 0 & 1 \\ 0 & {\mathbb{e}}^{j\quad{{\hat{\theta}}_{4}^{2}{(6)}}} \end{bmatrix}},{\sqrt{\frac{P_{T}}{4}}\begin{bmatrix} 1 & 0 \\ 0 & 1 \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{1}{(7)}}} & 0 \\ 0 & {\mathbb{e}}^{j\quad{{\hat{\theta}}_{4}^{2}{(7)}}} \end{bmatrix}},{\sqrt{\frac{P_{T}}{4}}\begin{bmatrix} 1 & 0 \\ 0 & 1 \\ 0 & {\mathbb{e}}^{j\quad{{\hat{\theta}}_{1}^{2}{(8)}}} \\ {\mathbb{e}}^{j\quad{{\hat{\theta}}_{4}^{1}{(8)}}} & 0 \end{bmatrix}}} \right\}},{where}} & (16) \\ {P^{\prime} = {\begin{bmatrix} \sqrt{\frac{P_{T}}{6}} & 0 \\ 0 & \sqrt{\frac{P_{T}}{2}} \end{bmatrix}.}} & (17) \end{matrix}$

An integer with 3 bits can be used to signal the selected partition to the transmitter. The eight possible outcomes of this integer corresponding to the above partitions are {r₁, {circumflex over (θ)}₂ ¹(1), {circumflex over (θ)}₃ ¹(1), {circumflex over (θ)}₄ ¹(1)}, {r₁, {circumflex over (θ)}₂ ¹(2), {circumflex over (θ)}₃ ¹(2), r₂}, {r₁, {circumflex over (θ)}₂ ¹(3), r₂, {circumflex over (θ)}₄ ¹(3)}, {r₁, r₂, {circumflex over (θ)}₃ ¹(4), {circumflex over (θ)}₄ ¹(4)}, {₂, r₁, {circumflex over (θ)}₃ ¹(5), {circumflex over (θ)}₄ ¹(5)}, {r₁, {circumflex over (θ)}₂ ¹(6), r₂, {circumflex over (θ)}₄ ²(6)}, {r₁, r₂, {circumflex over (θ)}₃ ¹(7), {circumflex over (θ)}₄ ²(7)} and {r₁, r₂, {circumflex over (θ)}₃ ¹(8), {circumflex over (θ)}₄ ¹(8)}, respectively.

The receiver feeds back the channel state information to the transmitter. In a preferred embodiment of the present invention, the feedback information comprises the partition selection (which can be signaled by means of an integer as described above) and the rates and angles of the selected partition.

When comparing the complexity of Multiple Stream Co-phasing (MSC) with S-PARC, it can be concluded that the complexities are of the same order. The transmitters for the two schemes require similar complexity, with the only additional requirement for MSC being phase rotation. The receivers for the two schemes are identical. The only difference in complexity between MSC and S-PARC is in how the feedback coefficients are computed. For S-PARC, the feedback coefficients are computed by computing the capacity for all possible subsets of the set of transmit antennas and then computing the individual capacity of each stream (stream capacities) for the chosen subset. For MSC, the feedback coefficients are computed by computing the capacity for all possible partitions of the set of transmit antennas and then computing the stream capacities for the chosen partition.

The number of subsets of the set of transmit antennas (except the null set) is 2 ^(M−1). It has been found that the number of antenna set partitions for 2×2, 3×3, and 4×4 MIMO systems are 2, 5, and 15, respectively. For example, the partitions for a 4×4 system (in addition to the partitions given in the previous section for a 4×2 system) are: A(9)={{1,2}, {3}, {4}}, A(10)={{1,3}, {2}{4}}, A(11)={{1,4}, {2}, {3}}, A(12)={{2,3}, {1}, {4}}, A(13)={{2,4}, {1}, {3}}, A(14)={{3,4}, {1}, {2}}, and A(15)={{1}, {2}, {3}, {4}}.

For 2×2, 3×3, and 4×4 MIMO systems, the number of partitions (2, 5, and 15, respectively) is less than or equal to the number of subsets (3, 7, and 15, respectively). The two schemes thus require a similar number of capacity evaluations. An additional requirement for MSC is the computation of co-phasing angles for each partition. A closed-form expression, equation (11), is used for the computation of a single co-phasing angle. An iterative algorithm is used for the computation of multiple co-phasing angles. It has been found that two iterations of the serial iterative algorithm described above provides very good estimates. Thus, the complexities of MSC and S-PARC are of the same order.

In another embodiment of the present invention, referred to as selective-MSC (S-MSC), the transmit antennas are utilized selectively as in selective-PARC (S-PARC). In S-MSC, all possible (or desirable) subsets of the set of transmit antennas are considered for transmitting input streams. The subset that achieves the highest capacity is selected. The capacity for each subset S⊂{1, 2, . . . , M} (except the null set) is found by partitioning the set S into all possible (or desirable) partitions (as in MSC) and evaluating the capacity for the partitions. The capacity for the set S is the maximum capacity over all partitions. S-MSC is useful at low SNR, when it may be better to not waste transmit power on an antenna that has weak signal power (below or not much higher than noise level). The receiver performs the antenna selection for S-MSC by hypothesizing each (or each desirable) subset of transmit antennas and finding the the best partition and the capacity for that subset. The subset that maximizes capacity is selected along with the partition. The receiver then signals this information to the transmitter.

In yet another embodiment, only certain (desirable) partitions are considered. For example, for a 4×4 MIMO system, one may consider the partitions A(1)={{1}, {2}, {3}, {4}} and A(2)={1, 2, 3, 4} only. The first partition corresponds to sending four independent input streams on four antennas, and the second partition corresponds to sending one input stream on all four antennas after co-phasing.

Other embodiments of the present invention include: (a) using alternative methods (metrics) for generating co-phasing angles, (b) quantizing rate and/or angle information for feedback, (c) using different power scaling of the streams based on the knowledge or an estimate of antenna gain disparity, and (d) using antenna correlation information.

It has been found that MSC greatly outperforms S-PARC under many practical conditions including low SNR, correlated receive antennas, systems in which there are fewer receive antennas than transmit antennas, and Ricean fading. This is because, unlike S-PARC, MSC uses all antennas to transmit an adaptive number of data streams with co-phasing, which achieves high SNR. For a 4×4 MIMO system with Ricean fading (8 dB line of sight component), MSC obtains a gain of 3.8 dB over S-PARC at the rate of 3 bits per symbol. For many MIMO channels of interest, MSC gets very close to the capacity of an optimum closed-loop MIMO scheme for the entire SNR range. This is achieved with similar complexity and feedback requirements as S-PARC (which are much less than those for optimum closed-loop MIMO).

As will be recognized by those skilled in the art, the innovative concepts described in the present application can be modified and varied over a wide range of applications. Accordingly, the scope of patented subject matter should not be limited to any of the specific exemplary teachings discussed above, but is instead defined by the following claims. 

1. In a radio system having a transmitter and a receiver, a method of transmitting multiple independent data streams from subsets of a plurality of radio antennas, said method comprising: determining by the receiver, a partitioning of the plurality of radio antennas that provides the highest channel capacity among all possible partitionings; providing information regarding the determined antenna partitioning to the transmitter; partitioning by the transmitter, the plurality of radio antennas into mutually exclusive subsets in accordance with the determined partitioning information; applying by the transmitter, a relative phase rotation to each antenna; and transmitting an independent data stream from each partitioned subset of antennas.
 2. The method according to claim 1, wherein the step of determining a partitioning of the plurality of radio antennas includes determining the number of antenna subsets, which antennas are included in each subset, the capacity of the data stream to be transmitted from each antenna subset, and the relative phase rotations to be applied to the antennas in each subset.
 3. The method according to claim 2, wherein the step of determining the relative phase rotation to be applied to each antenna includes determining for each antenna, a co-phasing angle that maximizes the received signal power.
 4. The method according to claim 3, wherein the step of determining a co-phasing angle for each antenna includes: computing a prefilter weight matrix for each antenna subset; computing a prefilter channel as a product of the prefilter weight matrix and a channel impulse response matrix; computing a trace metric of a prefilter channel autocorrelation matrix; and decoupling the trace metric to determine co-phasing angles independently for each data stream.
 5. The method according to claim 1, wherein the step of determining a partitioning of the plurality of radio antennas includes: hypothesizing every possible partition of the set of transmit antennas into subsets; for each antenna partitioning, determining the co-phasing angles to be applied to each antenna in each subset; for each antenna partitioning, determining a total channel capacity; and selecting the antenna partitioning that provides the highest channel capacity.
 6. The method according to claim 1, wherein the step of determining a partitioning of the plurality of radio antennas includes: hypothesizing every partition of the set of transmit antennas into subsets supported by the transmitter for each antenna partitioning, determining the co-phasing angles to be applied to each antenna in each subset; for each antenna partitioning, determining a total channel capacity; and selecting the supported antenna partitioning that provides the highest channel capacity.
 7. In a radio system having a transmitter and a receiver, a method of transmitting a data stream from a selected subset of a plurality of radio antennas, said method comprising: partitioning by the receiver, the plurality of radio antennas into a plurality of subsets; calculating by the receiver for each subset: a relative phase rotation to be applied to each antenna in the subset; and a stream capacity for the subset with the relative phase rotations applied; selecting by the receiver, a subset having the highest stream capacity; sending information to the transmitter regarding the selected subset; and transmitting the data stream from the selected subset of antennas after applying the relative phase rotations to the antennas in the selected subset.
 8. The method according to claim 7, wherein the step of partitioning the plurality of radio antennas into a plurality of subsets includes partitioning the plurality of radio antennas into every possible antenna subset.
 9. The method according to claim 7, wherein the step of partitioning the plurality of radio antennas into a plurality of subsets includes partitioning the plurality of radio antennas into every antenna subset supported by the transmitter.
 10. In a radio system having a transmitter and a receiver, a method of transmitting independent data streams from each antenna of a set of radio antennas having a plurality of radio antennas therein, said method comprising: partitioning by the receiver, the set of radio antennas into mutually exclusive subsets; calculating by the receiver for each partitioned subset: a relative phase rotation for each antenna in the partitioned subset; and a stream capacity for the partitioned subset; determining by the receiver, a partitioning of the antennas that provides the highest overall channel capacity; sending information from the receiver to the transmitter regarding the antenna set partitioning, stream capacities for each partition, and the relative phase rotation for each antenna; partitioning the radio antennas by the transmitter in accordance with the partitioning that provides the highest overall channel capacity; applying to each transmit antenna, the relative phase rotation received by the transmitter from the receiver; and transmitting independent data streams from each partitioned subset of antennas.
 11. The method according to claim 10, wherein the step of calculating a relative phase rotation for each antenna in each partitioned subset includes utilizing an iterative algorithm to find the relative phase rotation for each antenna that maximizes received signal strength for the subset.
 12. A radio system for transmitting multiple independent data streams from subsets of a plurality of radio antennas, said system comprising: a receiver comprising: means for determining a partitioning of the plurality of radio antennas that provides the highest channel capacity among all possible partitionings; and means for sending information regarding the determined partitioning to a transmitter; and a transmitter comprising: means for partitioning the plurality of radio antennas into mutually exclusive subsets in accordance with the determined partitioning information; means for applying a relative phase rotation to each antenna; and means for transmitting an independent data stream from each partitioned subset of antennas.
 13. The system according to claim 12, wherein the means for determining a partitioning of the plurality of radio antennas includes means for determining the number of antenna subsets, which antennas are included in each subset, and the relative phase rotation to be applied to each antenna.
 14. The system according to claim 13, wherein the means for determining the relative phase rotation to be applied to each antenna includes means for determining for each antenna, a co-phasing angle that maximizes the received signal power.
 15. The system according to claim 12, wherein the means for determining a partitioning of the plurality of radio antennas includes: means for determining a stream capacity for every possible antenna subset; means for determining a total channel capacity for each antenna partitioning; and means for selecting the antenna partitioning that provides the highest channel capacity.
 16. The system according to claim 12, wherein the means for determining a partitioning of the plurality of radio antennas includes: means for determining a stream capacity for every antenna subset supported by the transmitter; means for determining a total channel capacity for each supported antenna partitioning; and means for selecting the supported antenna partitioning that provides the highest channel capacity.
 17. A radio system for transmitting a data stream from a selected subset of a plurality of radio antennas, said system comprising: a receiver comprising: means for partitioning the plurality of radio antennas into a plurality of subsets; means for calculating for each subset, a co-phasing angle to be applied to each antenna in the subset, and a stream capacity for the subset with the co-phasing angles applied; means for selecting a subset having the highest stream capacity; and means for sending information to the transmitter regarding the selected subset; and a transmitter comprising means for transmitting the data stream from the selected subset of antennas after applying the co-phasing angles to the antennas in the selected subset.
 18. The system according to claim 17, wherein the means for partitioning the plurality of radio antennas into a plurality of subsets includes means for partitioning the plurality of radio antennas into every possible antenna subset.
 19. The system according to claim 17, wherein the means for partitioning the plurality of radio antennas into a plurality of subsets includes means for partitioning the plurality of radio antennas into every antenna subset supported by the transmitter. 